# GCC Code Coverage Report

include/rvc/Ports.hpp

Line | Branch | Exec | Source
--- | --- | --- | ---
1 |  |  | #pragma once
2 |  |  |
3 |  |  | #include "rvc/Types.hpp"
4 |  |  |
5 |  |  | namespace rvc {
6 |  |  |
7 |  |  | class SessionIntentPort {
8 |  |  | public:
9 |  | 7 | virtual ~SessionIntentPort() = default;
10 |  |  |
11 |  |  | virtual void StartSession(SessionSource source) = 0;
12 |  |  | virtual void StopSession() = 0;
13 |  |  | virtual void ResumeSession(SessionSource source) = 0;
14 |  |  | virtual void requestServiceOrReset() = 0;
15 |  |  | };
16 |  |  |
17 |  |  | class ObstacleInputPort {
18 |  |  | public:
19 |  | 13 | virtual ~ObstacleInputPort() = default;
20 |  |  |
21 |  |  | virtual FusedObstacleSnapshot ObstacleStateChanged(const ObstacleEvent& event) = 0;
22 |  |  | };
23 |  |  |
24 |  |  | class DustInputPort {
25 |  |  | public:
26 |  | 38 | virtual ~DustInputPort() = default;
27 |  |  |
28 |  |  | virtual void DustSignalUpdated(DustSignal signal) = 0;
29 |  |  | };
30 |  |  |
31 |  |  | class MotionCommandSink {
32 |  |  | public:
33 |  | 30 | virtual ~MotionCommandSink() = default;
34 |  |  |
35 |  |  | virtual void MotionCommand(rvc::MotionCommand command) = 0;
36 |  |  | };
37 |  |  |
38 |  |  | class CleaningCommandSink {
39 |  |  | public:
40 |  | 38 | virtual ~CleaningCommandSink() = default;
41 |  |  |
42 |  |  | virtual void CleaningCommand(rvc::CleaningCommand command) = 0;
43 |  |  | };
44 |  |  |
45 |  |  | } // namespace rvc
46 |  |  |